共计 668 个字符,预计需要花费 2 分钟才能阅读完成。
问题
业务方报障,一台公有云裸金属服务器下执行创建目录报错:
# pwd
/data
# mkdir elasticsearch
mkdir:cannot create directory 'elasticsearch':Structure needs cleaning
排查思路
报错为 Structure needs cleaning
时,大概率是文件系统损坏或硬件故障,小概率可能是操作系统故障。
首先确定当前硬盘挂载信息,是 /dev/nvme0n1 下一个 7T nvme 硬盘。
再看看 fstab 挂载:
执行 mount -a
,校验 fstab 文件是否有误,结果报错:
需要注释掉该行,这是一个不存在的磁盘UUID。若不注释,则系统重启时会由于找不到硬盘设备导致无法引导系统。but 这个错误条目和本次问题无关。
通过 fstab 信息,可以知道文件系统为xfs。和业务方确认过,该硬盘是空的,没有在使用。我使用 ls -la
查看也是相同结论。
先执行 cd && umount /data
,取消挂载,去 /data
下创建目录,没有报错。说明操作系统没有异常。
此时执行 mount -a
,重新挂载硬盘,报错。说明文件系统损坏或者硬件故障了。
由于磁盘本身是空的,未在使用,尝试格式化磁盘,结果报错 :mkfs.xfs: pwrite64 failed: Input/output error
。
此时即可定位到为磁盘硬件问题。再通过 nvme list
和 smartctl -a /dev/nvme0n1
命令,明确了磁盘的确出现故障:
因为是公有云的裸金属服务器,联系客服进行报修。
正文完